#define _CRT_SECURE_NO_WARNINGS 1


//#include <stdio.h>
//#include <malloc.h>
//int main()
//{
//
//	cha
//	p[0]r* p[3];
//	 = (char*)malloc(100);
//	gets(p[0]);
//
//	printf("%s",p[0]);
//
//	return 0;
//}




#include <stdio.h>
#include <assert.h>
#include<string.h>



void resver(char* left, char* right)
{

	assert(left);

	while (left < right)
	{

		char tmp = *left;
		*left = *right;
		*right = tmp;
		left++;
		right--;

	}
}


int main()
{
	char arr[100];
	gets(arr);
	char* p = arr;
	int len = strlen(arr);
	resver(p, p + len - 1);

	while (*p)
	{
		char* p2 = p;



		while (*p != ' ' && *p != '\0')
		{
			p++;
		}
		resver(p2, p - 1);
		if(*p!='\0')
			p++;

	}

	printf("%s",arr);
	return 0;
}




